/* 
 * File:   light.h
 * Author: chaterolas
 *
 * Created on 24 de junio de 2009, 09:25 PM
 */

#ifndef _LIGHT_H
#define	_LIGHT_H

#include "primitive.h"

class Light : public Primitive {
public:
    Light(double cR, double cG, double cB, double px, double py, double pz,
            double dx, double dy, double dz, double inty, int samp);
    virtual ~Light();


    double intersect(Ray *r);
    Vector3D *getNormal(Vector3D *pos);
    int getType();

    int getSampleCount();
    Vector3D *getPosition();
    Color *getColor();
    double getIntesity();

protected:
    Color *color;
    Vector3D *pos, *dir;
    double intensity, size;
    int samples;
};

#endif	/* _LIGHT_H */

